# 函数的参数:

# 1, 必备参数
def fffn(a, b):
    print(a, b)

fffn('zzzzzzzzzzzz', 'xxxxxxxxxxx') # 调用的时候必须按顺序传参

# 2, 命名参数
def fn(a, b):
    print(a, b)

fn(b='33', a= '21') # 调用的时候用 = 去传参，不用按顺序传参

# 3, 默认参数(默认参数后必须没有必备参数)
def fn1(a, b, c = 2):
    print(a, b, c)

fn1(1,1) # 调用的时候必须按顺序传参

# 4, 可变参数(arg 接受过来的是 一个元组)
def fn2(a, b, *arg):
    print(a, b, arg)

fn2(2,2,3,4,4,5,5) # 2 2 (3, 4, 4, 5, 5)

# 5, 可变war字典参数
def fn3(a, b, **kwargs):
    print(a, b, kwargs)

fn3(3, 3, c = '*', d = '**') # 3 3 {'c': '*', 'd': '**'}